package com.linkstec.spring;

import java.util.Map;

import org.springframework.stereotype.Component;

/**
 * MOT触发前处理，主要根据客户特征（客户等级，客户关系）来过滤目标客户群
 * 
 * @author zhanghy
 * 
 */
@Component
public interface IRuleFilterHandle {

	/** 保存筛选后目标客户群的临时表前缀，表命名规则=VT_RULE_TARGET_{RULE_ID} */
	public static String TARGET_TABLE_PREFIX = "VT_RULE_TARGET_";

	/**
	 * 根据事件对应的过滤规则对全客户进行目标客户群过滤，并将过滤的结果集保持至临时表
	 * 
	 */
	public void dealRuleFilter(Long ruleId);

	/**
	 * 删除当前进行事件触发计算的目标客户群临时表
	 * 
	 */
	public void deleteTempTable(Long ruleId);

	/**
	 * 取得目标客户群所用的table和keys
	 * 
	 */
	public Map<String, Object> getTargetTableInfo(Long ruleId);

}